home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 January: Technology Seed / Jan. '98 ATS.toast / QuickTime™ 3.0b11 / QTPublicInterfaces / CIncludes / ColorPickerComponents.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-01-12  |  29.5 KB  |  587 lines  |  [TEXT/MPS ]

  1. /*
  2.      File:        ColorPickerComponents.h
  3.  
  4.      Contains:    Color Picker Component Interfaces.
  5.  
  6.      Version:    Technology:    System 7.5
  7.                  Release:    QuickTime 3.0 Beta
  8.  
  9.      Copyright:    © 1994-1997 by Apple Computer, Inc., all rights reserved.
  10.  
  11.      Bugs?:        Please include the the file and version information (from above) with
  12.                  the problem description.  Developers belonging to one of the Apple
  13.                  developer programs can submit bug reports to:
  14.  
  15.                      devsupport@apple.com
  16.  
  17. */
  18. #ifndef __COLORPICKERCOMPONENTS__
  19. #define __COLORPICKERCOMPONENTS__
  20.  
  21. #ifndef __COLORPICKER__
  22. #include <ColorPicker.h>
  23. #endif
  24. #ifndef __COMPONENTS__
  25. #include <Components.h>
  26. #endif
  27. #ifndef __MIXEDMODE__
  28. #include <MixedMode.h>
  29. #endif
  30. #ifndef __BALLOONS__
  31. #include <Balloons.h>
  32. #endif
  33.  
  34.  
  35.  
  36. #if PRAGMA_ONCE
  37. #pragma once
  38. #endif
  39.  
  40. #ifdef __cplusplus
  41. extern "C" {
  42. #endif
  43.  
  44. #if PRAGMA_IMPORT
  45. #pragma import on
  46. #endif
  47.  
  48. #if PRAGMA_STRUCT_ALIGN
  49.     #pragma options align=mac68k
  50. #elif PRAGMA_STRUCT_PACKPUSH
  51.     #pragma pack(push, 2)
  52. #elif PRAGMA_STRUCT_PACK
  53.     #pragma pack(2)
  54. #endif
  55.  
  56.  
  57. enum {
  58.     kPickerComponentType        = FOUR_CHAR_CODE('cpkr')
  59. };
  60.  
  61.  
  62.  
  63. enum {
  64.     kPickerInit                    = 0,
  65.     kPickerTestGraphicsWorld    = 1,
  66.     kPickerGetDialog            = 2,
  67.     kPickerGetItemList            = 3,
  68.     kPickerGetColor                = 4,
  69.     kPickerSetColor                = 5,
  70.     kPickerEvent                = 6,
  71.     kPickerEdit                    = 7,
  72.     kPickerSetVisibility        = 8,
  73.     kPickerDisplay                = 9,
  74.     kPickerItemHit                = 10,
  75.     kPickerSetBaseItem            = 11,
  76.     kPickerGetProfile            = 12,
  77.     kPickerSetProfile            = 13,
  78.     kPickerGetPrompt            = 14,
  79.     kPickerSetPrompt            = 15,
  80.     kPickerGetIconData            = 16,
  81.     kPickerGetEditMenuState        = 17,
  82.     kPickerSetOrigin            = 18,
  83.     kPickerExtractHelpItem        = 19,
  84.     kPickerSetColorChangedProc    = 20,
  85.     kNPickerGetColor            = 21,
  86.     kNPickerSetColor            = 22,
  87.     kNPickerGetProfile            = 23,
  88.     kNPickerSetProfile            = 24,
  89.     kNPickerSetColorChangedProc    = 25
  90. };
  91.  
  92. #if OLDROUTINENAMES
  93.  
  94. enum {
  95.     kInitPicker                    = kPickerInit,
  96.     kTestGraphicsWorld            = kPickerTestGraphicsWorld,
  97.     kGetDialog                    = kPickerGetDialog,
  98.     kGetItemList                = kPickerGetItemList,
  99.     kGetColor                    = kPickerGetColor,
  100.     kSetColor                    = kPickerSetColor,
  101.     kEvent                        = kPickerEvent,
  102.     kEdit                        = kPickerEdit,
  103.     kSetVisibility                = kPickerSetVisibility,
  104.     kDrawPicker                    = kPickerDisplay,
  105.     kItemHit                    = kPickerItemHit,
  106.     kSetBaseItem                = kPickerSetBaseItem,
  107.     kGetProfile                    = kPickerGetProfile,
  108.     kSetProfile                    = kPickerSetProfile,
  109.     kGetPrompt                    = kPickerGetPrompt,
  110.     kSetPrompt                    = kPickerSetPrompt,
  111.     kGetIconData                = kPickerGetIconData,
  112.     kGetEditMenuState            = kPickerGetEditMenuState,
  113.     kSetOrigin                    = kPickerSetOrigin,
  114.     kExtractHelpItem            = kPickerExtractHelpItem
  115. };
  116.  
  117. #endif  /* OLDROUTINENAMES */
  118.  
  119. /* These structs were moved here from the ColorPicker header.*/
  120.  
  121.  
  122. enum {
  123.     kDidNothing                    = 0,
  124.     kColorChanged                = 1,
  125.     kOkHit                        = 2,
  126.     kCancelHit                    = 3,
  127.     kNewPickerChosen            = 4,
  128.     kApplItemHit                = 5
  129. };
  130.  
  131. typedef short                             PickerAction;
  132.  
  133. enum {
  134.     kOriginalColor                = 0,
  135.     kNewColor                    = 1
  136. };
  137.  
  138. typedef short                             ColorType;
  139.  
  140. enum {
  141.     kCut                        = 0,
  142.     kCopy                        = 1,
  143.     kPaste                        = 2,
  144.     kClear                        = 3,
  145.     kUndo                        = 4
  146. };
  147.  
  148. typedef short                             EditOperation;
  149.  
  150. enum {
  151.     kMouseDown                    = 0,
  152.     kKeyDown                    = 1,
  153.     kFieldEntered                = 2,
  154.     kFieldLeft                    = 3,
  155.     kCutOp                        = 4,
  156.     kCopyOp                        = 5,
  157.     kPasteOp                    = 6,
  158.     kClearOp                    = 7,
  159.     kUndoOp                        = 8
  160. };
  161.  
  162. typedef short                             ItemModifier;
  163. /* These are for the flags field in the picker's 'thng' resource. */
  164.  
  165. enum {
  166.     CanDoColor                    = 1,
  167.     CanDoBlackWhite                = 2,
  168.     AlwaysModifiesPalette        = 4,
  169.     MayModifyPalette            = 8,
  170.     PickerIsColorSyncAware        = 16,
  171.     CanDoSystemDialog            = 32,
  172.     CanDoApplDialog                = 64,
  173.     HasOwnDialog                = 128,
  174.     CanDetach                    = 256,
  175.     PickerIsColorSync2Aware        = 512
  176. };
  177.  
  178.  
  179.  
  180. enum {
  181.     kNoForcast                    = 0,
  182.     kMenuChoice                    = 1,
  183.     kDialogAccept                = 2,
  184.     kDialogCancel                = 3,
  185.     kLeaveFocus                    = 4,
  186.     kPickerSwitch                = 5,
  187.     kNormalKeyDown                = 6,
  188.     kNormalMouseDown            = 7
  189. };
  190.  
  191. typedef short                             EventForcaster;
  192.  
  193. struct PickerIconData {
  194.     short                             scriptCode;
  195.     short                             iconSuiteID;
  196.     ResType                         helpResType;
  197.     short                             helpResID;
  198. };
  199. typedef struct PickerIconData            PickerIconData;
  200.  
  201.  
  202. struct PickerInitData {
  203.     DialogPtr                         pickerDialog;
  204.     DialogPtr                         choicesDialog;
  205.     long                             flags;
  206.     Picker                             yourself;
  207. };
  208. typedef struct PickerInitData            PickerInitData;
  209.  
  210.  
  211. struct PickerMenuState {
  212.     Boolean                         cutEnabled;
  213.     Boolean                         copyEnabled;
  214.     Boolean                         pasteEnabled;
  215.     Boolean                         clearEnabled;
  216.     Boolean                         undoEnabled;
  217.     SInt8                             filler;
  218.     Str255                             undoString;
  219. };
  220. typedef struct PickerMenuState            PickerMenuState;
  221.  
  222. struct SystemDialogInfo {
  223.     long                             flags;
  224.     long                             pickerType;
  225.     DialogPlacementSpec             placeWhere;
  226.     Point                             dialogOrigin;
  227.     PickerMenuItemInfo                 mInfo;
  228. };
  229. typedef struct SystemDialogInfo            SystemDialogInfo;
  230.  
  231.  
  232. struct PickerDialogInfo {
  233.     long                             flags;
  234.     long                             pickerType;
  235.     Point *                            dialogOrigin;
  236.     PickerMenuItemInfo                 mInfo;
  237. };
  238. typedef struct PickerDialogInfo            PickerDialogInfo;
  239.  
  240.  
  241. struct ApplicationDialogInfo {
  242.     long                             flags;
  243.     long                             pickerType;
  244.     DialogPtr                         theDialog;
  245.     Point                             pickerOrigin;
  246.     PickerMenuItemInfo                 mInfo;
  247. };
  248. typedef struct ApplicationDialogInfo    ApplicationDialogInfo;
  249.  
  250.  
  251. struct EventData {
  252.     EventRecord *                    event;
  253.     PickerAction                     action;
  254.     short                             itemHit;
  255.     Boolean                         handled;
  256.     SInt8                             filler;
  257.     ColorChangedUPP                 colorProc;
  258.     long                             colorProcData;
  259.     EventForcaster                     forcast;
  260. };
  261. typedef struct EventData                EventData;
  262.  
  263.  
  264. struct EditData {
  265.     EditOperation                     theEdit;
  266.     PickerAction                     action;
  267.     Boolean                         handled;
  268.     SInt8                             filler;
  269. };
  270. typedef struct EditData                    EditData;
  271.  
  272.  
  273. struct ItemHitData {
  274.     short                             itemHit;
  275.     ItemModifier                     iMod;
  276.     PickerAction                     action;
  277.     ColorChangedUPP                 colorProc;
  278.     long                             colorProcData;
  279.     Point                             where;
  280. };
  281. typedef struct ItemHitData                ItemHitData;
  282.  
  283. struct HelpItemInfo {
  284.     long                             options;
  285.     Point                             tip;
  286.     Rect                             altRect;
  287.     short                             theProc;
  288.     short                             helpVariant;
  289.     HMMessageRecord                 helpMessage;
  290. };
  291. typedef struct HelpItemInfo                HelpItemInfo;
  292.  
  293. typedef CALLBACK_API( ComponentResult , PickerOpenProcPtr )(long storage, ComponentInstance self);
  294. typedef CALLBACK_API( ComponentResult , PickerCloseProcPtr )(long storage, ComponentInstance self);
  295. typedef CALLBACK_API( ComponentResult , PickerCanDoProcPtr )(long storage, short selector);
  296. typedef CALLBACK_API( ComponentResult , PickerVersionProcPtr )(long storage);
  297. typedef CALLBACK_API( ComponentResult , PickerRegisterProcPtr )(long storage);
  298. typedef CALLBACK_API( ComponentResult , PickerSetTargetProcPtr )(long storage, ComponentInstance topOfCallChain);
  299. typedef STACK_UPP_TYPE(PickerOpenProcPtr)                         PickerOpenUPP;
  300. typedef STACK_UPP_TYPE(PickerCloseProcPtr)                         PickerCloseUPP;
  301. typedef STACK_UPP_TYPE(PickerCanDoProcPtr)                         PickerCanDoUPP;
  302. typedef STACK_UPP_TYPE(PickerVersionProcPtr)                     PickerVersionUPP;
  303. typedef STACK_UPP_TYPE(PickerRegisterProcPtr)                     PickerRegisterUPP;
  304. typedef STACK_UPP_TYPE(PickerSetTargetProcPtr)                     PickerSetTargetUPP;
  305. EXTERN_API( ComponentResult )
  306. PickerInit                        (long                     storage,
  307.                                  PickerInitData *        data)                                FIVEWORDINLINE(0x2F3C, 0x0004, 0x0000, 0x7000, 0xA82A);
  308.  
  309. typedef CALLBACK_API( ComponentResult , PickerInitProcPtr )(long storage, PickerInitData *data);
  310. EXTERN_API( ComponentResult )
  311. PickerTestGraphicsWorld            (long                     storage,
  312.                                  PickerInitData *        data)                                FIVEWORDINLINE(0x2F3C, 0x0004, 0x0001, 0x7000, 0xA82A);
  313.  
  314. typedef CALLBACK_API( ComponentResult , PickerTestGraphicsWorldProcPtr )(long storage, PickerInitData *data);
  315. EXTERN_API( ComponentResult )
  316. PickerGetDialog                    (long                     storage)                            FIVEWORDINLINE(0x2F3C, 0x0000, 0x0002, 0x7000, 0xA82A);
  317.  
  318. typedef CALLBACK_API( ComponentResult , PickerGetDialogProcPtr )(long storage);
  319. EXTERN_API( ComponentResult )
  320. PickerGetItemList                (long                     storage)                            FIVEWORDINLINE(0x2F3C, 0x0000, 0x0003, 0x7000, 0xA82A);
  321.  
  322. typedef CALLBACK_API( ComponentResult , PickerGetItemListProcPtr )(long storage);
  323. EXTERN_API( ComponentResult )
  324. PickerGetColor                    (long                     storage,
  325.                                  ColorType                 whichColor,
  326.                                  PMColorPtr             color)                                FIVEWORDINLINE(0x2F3C, 0x0006, 0x0004, 0x7000, 0xA82A);
  327.  
  328. typedef CALLBACK_API( ComponentResult , PickerGetColorProcPtr )(long storage, ColorType whichColor, PMColorPtr color);
  329. EXTERN_API( ComponentResult )
  330. PickerSetColor                    (long                     storage,
  331.                                  ColorType                 whichColor,
  332.                                  PMColorPtr             color)                                FIVEWORDINLINE(0x2F3C, 0x0006, 0x0005, 0x7000, 0xA82A);
  333.  
  334. typedef CALLBACK_API( ComponentResult , PickerSetColorProcPtr )(long storage, ColorType whichColor, PMColorPtr color);
  335. EXTERN_API( ComponentResult )
  336. PickerEvent                        (long                     storage,
  337.                                  EventData *            data)                                FIVEWORDINLINE(0x2F3C, 0x0004, 0x0006, 0x7000, 0xA82A);
  338.  
  339. typedef CALLBACK_API( ComponentResult , PickerEventProcPtr )(long storage, EventData *data);
  340. EXTERN_API( ComponentResult )
  341. PickerEdit                        (long                     storage,
  342.                                  EditData *                data)                                FIVEWORDINLINE(0x2F3C, 0x0004, 0x0007, 0x7000, 0xA82A);
  343.  
  344. typedef CALLBACK_API( ComponentResult , PickerEditProcPtr )(long storage, EditData *data);
  345. EXTERN_API( ComponentResult )
  346. PickerSetVisibility                (long                     storage,
  347.                                  Boolean                 visible)                            FIVEWORDINLINE(0x2F3C, 0x0002, 0x0008, 0x7000, 0xA82A);
  348.  
  349. typedef CALLBACK_API( ComponentResult , PickerSetVisibilityProcPtr )(long storage, Boolean visible);
  350. EXTERN_API( ComponentResult )
  351. PickerDisplay                    (long                     storage)                            FIVEWORDINLINE(0x2F3C, 0x0000, 0x0009, 0x7000, 0xA82A);
  352.  
  353. typedef CALLBACK_API( ComponentResult , PickerDisplayProcPtr )(long storage);
  354. EXTERN_API( ComponentResult )
  355. PickerItemHit                    (long                     storage,
  356.                                  ItemHitData *            data)                                FIVEWORDINLINE(0x2F3C, 0x0004, 0x000A, 0x7000, 0xA82A);
  357.  
  358. typedef CALLBACK_API( ComponentResult , PickerItemHitProcPtr )(long storage, ItemHitData *data);
  359. EXTERN_API( ComponentResult )
  360. PickerSetBaseItem                (long                     storage,
  361.                                  short                     baseItem)                            FIVEWORDINLINE(0x2F3C, 0x0002, 0x000B, 0x7000, 0xA82A);
  362.  
  363. typedef CALLBACK_API( ComponentResult , PickerSetBaseItemProcPtr )(long storage, short baseItem);
  364. EXTERN_API( ComponentResult )
  365. PickerGetProfile                (long                     storage)                            FIVEWORDINLINE(0x2F3C, 0x0000, 0x000C, 0x7000, 0xA82A);
  366.  
  367. typedef CALLBACK_API( ComponentResult , PickerGetProfileProcPtr )(long storage);
  368. EXTERN_API( ComponentResult )
  369. PickerSetProfile                (long                     storage,
  370.                                  CMProfileHandle         profile)                            FIVEWORDINLINE(0x2F3C, 0x0004, 0x000D, 0x7000, 0xA82A);
  371.  
  372. typedef CALLBACK_API( ComponentResult , PickerSetProfileProcPtr )(long storage, CMProfileHandle profile);
  373. EXTERN_API( ComponentResult )
  374. PickerGetPrompt                    (long                     storage,
  375.                                  Str255                 prompt)                                FIVEWORDINLINE(0x2F3C, 0x0004, 0x000E, 0x7000, 0xA82A);
  376.  
  377. typedef CALLBACK_API( ComponentResult , PickerGetPromptProcPtr )(long storage, Str255 prompt);
  378. EXTERN_API( ComponentResult )
  379. PickerSetPrompt                    (long                     storage,
  380.                                  ConstStr255Param         prompt)                                FIVEWORDINLINE(0x2F3C, 0x0004, 0x000F, 0x7000, 0xA82A);
  381.  
  382. typedef CALLBACK_API( ComponentResult , PickerSetPromptProcPtr )(long storage, ConstStr255Param prompt);
  383. EXTERN_API( ComponentResult )
  384. PickerGetIconData                (long                     storage,
  385.                                  PickerIconData *        data)                                FIVEWORDINLINE(0x2F3C, 0x0004, 0x0010, 0x7000, 0xA82A);
  386.  
  387. typedef CALLBACK_API( ComponentResult , PickerGetIconDataProcPtr )(long storage, PickerIconData *data);
  388. EXTERN_API( ComponentResult )
  389. PickerGetEditMenuState            (long                     storage,
  390.                                  PickerMenuState *        mState)                                FIVEWORDINLINE(0x2F3C, 0x0004, 0x0011, 0x7000, 0xA82A);
  391.  
  392. typedef CALLBACK_API( ComponentResult , PickerGetEditMenuStateProcPtr )(long storage, PickerMenuState *mState);
  393. EXTERN_API( ComponentResult )
  394. PickerSetOrigin                    (long                     storage,
  395.                                  Point                     where)                                FIVEWORDINLINE(0x2F3C, 0x0004, 0x0012, 0x7000, 0xA82A);
  396.  
  397. typedef CALLBACK_API( ComponentResult , PickerSetOriginProcPtr )(long storage, Point where);
  398. /*    Below are the ColorPicker 2.1 routines.*/
  399.  
  400.  
  401. EXTERN_API( ComponentResult )
  402. PickerSetColorChangedProc        (long                     storage,
  403.                                  ColorChangedUPP         colorProc,
  404.                                  long                     colorProcData)                        FIVEWORDINLINE(0x2F3C, 0x0008, 0x0014, 0x7000, 0xA82A);
  405.  
  406. typedef CALLBACK_API( ComponentResult , PickerSetColorChangedProcProcPtr )(long storage, NColorChangedUPP colorProc, long colorProcData);
  407. /* New Color Picker 2.1 messages.  If you don't wish to support these you should already be... */
  408. /* returning a paramErr in your main entry routine.  They have new selectors*/
  409. EXTERN_API( ComponentResult )
  410. NPickerGetColor                    (long                     storage,
  411.                                  ColorType                 whichColor,
  412.                                  NPMColor *                color)                                FIVEWORDINLINE(0x2F3C, 0x0006, 0x0015, 0x7000, 0xA82A);
  413.  
  414. typedef CALLBACK_API( ComponentResult , NPickerGetColorProcPtr )(long storage, ColorType whichColor, NPMColor *color);
  415. EXTERN_API( ComponentResult )
  416. NPickerSetColor                    (long                     storage,
  417.                                  ColorType                 whichColor,
  418.                                  NPMColor *                color)                                FIVEWORDINLINE(0x2F3C, 0x0006, 0x0016, 0x7000, 0xA82A);
  419.  
  420. typedef CALLBACK_API( ComponentResult , NPickerSetColorProcPtr )(long storage, ColorType whichColor, NPMColor *color);
  421. EXTERN_API( ComponentResult )
  422. NPickerGetProfile                (long                     storage,
  423.                                  CMProfileRef *            profile)                            FIVEWORDINLINE(0x2F3C, 0x0004, 0x0017, 0x7000, 0xA82A);
  424.  
  425. typedef CALLBACK_API( ComponentResult , NPickerGetProfileProcPtr )(long storage, CMProfileRef *profile);
  426. EXTERN_API( ComponentResult )
  427. NPickerSetProfile                (long                     storage,
  428.                                  CMProfileRef             profile)                            FIVEWORDINLINE(0x2F3C, 0x0004, 0x0018, 0x7000, 0xA82A);
  429.  
  430. typedef CALLBACK_API( ComponentResult , NPickerSetProfileProcPtr )(long storage, CMProfileRef profile);
  431. EXTERN_API( ComponentResult )
  432. NPickerSetColorChangedProc        (long                     storage,
  433.                                  NColorChangedUPP         colorProc,
  434.                                  long                     colorProcData)                        FIVEWORDINLINE(0x2F3C, 0x0008, 0x0019, 0x7000, 0xA82A);
  435.  
  436. typedef CALLBACK_API( ComponentResult , NPickerSetColorChangedProcProcPtr )(long storage, NColorChangedUPP colorProc, long colorProcData);
  437. EXTERN_API( ComponentResult )
  438. PickerExtractHelpItem            (long                     storage,
  439.                                  short                     itemNo,
  440.                                  short                     whichMsg,
  441.                                  HelpItemInfo *            helpInfo)                            FIVEWORDINLINE(0x2F3C, 0x0008, 0x0013, 0x7000, 0xA82A);
  442.  
  443. typedef CALLBACK_API( ComponentResult , PickerExtractHelpItemProcPtr )(long storage, short itemNo, short whichMsg, HelpItemInfo *helpInfo);
  444. typedef STACK_UPP_TYPE(PickerInitProcPtr)                         PickerInitUPP;
  445. typedef STACK_UPP_TYPE(PickerTestGraphicsWorldProcPtr)             PickerTestGraphicsWorldUPP;
  446. typedef STACK_UPP_TYPE(PickerGetDialogProcPtr)                     PickerGetDialogUPP;
  447. typedef STACK_UPP_TYPE(PickerGetItemListProcPtr)                 PickerGetItemListUPP;
  448. typedef STACK_UPP_TYPE(PickerGetColorProcPtr)                     PickerGetColorUPP;
  449. typedef STACK_UPP_TYPE(PickerSetColorProcPtr)                     PickerSetColorUPP;
  450. typedef STACK_UPP_TYPE(PickerEventProcPtr)                         PickerEventUPP;
  451. typedef STACK_UPP_TYPE(PickerEditProcPtr)                         PickerEditUPP;
  452. typedef STACK_UPP_TYPE(PickerSetVisibilityProcPtr)                 PickerSetVisibilityUPP;
  453. typedef STACK_UPP_TYPE(PickerDisplayProcPtr)                     PickerDisplayUPP;
  454. typedef STACK_UPP_TYPE(PickerItemHitProcPtr)                     PickerItemHitUPP;
  455. typedef STACK_UPP_TYPE(PickerSetBaseItemProcPtr)                 PickerSetBaseItemUPP;
  456. typedef STACK_UPP_TYPE(PickerGetProfileProcPtr)                 PickerGetProfileUPP;
  457. typedef STACK_UPP_TYPE(PickerSetProfileProcPtr)                 PickerSetProfileUPP;
  458. typedef STACK_UPP_TYPE(PickerGetPromptProcPtr)                     PickerGetPromptUPP;
  459. typedef STACK_UPP_TYPE(PickerSetPromptProcPtr)                     PickerSetPromptUPP;
  460. typedef STACK_UPP_TYPE(PickerGetIconDataProcPtr)                 PickerGetIconDataUPP;
  461. typedef STACK_UPP_TYPE(PickerGetEditMenuStateProcPtr)             PickerGetEditMenuStateUPP;
  462. typedef STACK_UPP_TYPE(PickerSetOriginProcPtr)                     PickerSetOriginUPP;
  463. typedef STACK_UPP_TYPE(PickerSetColorChangedProcProcPtr)         PickerSetColorChangedProcUPP;
  464. typedef STACK_UPP_TYPE(NPickerGetColorProcPtr)                     NPickerGetColorUPP;
  465. typedef STACK_UPP_TYPE(NPickerSetColorProcPtr)                     NPickerSetColorUPP;
  466. typedef STACK_UPP_TYPE(NPickerGetProfileProcPtr)                 NPickerGetProfileUPP;
  467. typedef STACK_UPP_TYPE(NPickerSetProfileProcPtr)                 NPickerSetProfileUPP;
  468. typedef STACK_UPP_TYPE(NPickerSetColorChangedProcProcPtr)         NPickerSetColorChangedProcUPP;
  469. typedef STACK_UPP_TYPE(PickerExtractHelpItemProcPtr)             PickerExtractHelpItemUPP;
  470. enum { uppPickerOpenProcInfo = 0x000003F0 };                     /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  471. enum { uppPickerCloseProcInfo = 0x000003F0 };                     /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  472. enum { uppPickerCanDoProcInfo = 0x000002F0 };                     /* pascal 4_bytes Func(4_bytes, 2_bytes) */
  473. enum { uppPickerVersionProcInfo = 0x000000F0 };                 /* pascal 4_bytes Func(4_bytes) */
  474. enum { uppPickerRegisterProcInfo = 0x000000F0 };                 /* pascal 4_bytes Func(4_bytes) */
  475. enum { uppPickerSetTargetProcInfo = 0x000003F0 };                 /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  476. enum { uppPickerInitProcInfo = 0x000003F0 };                     /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  477. enum { uppPickerTestGraphicsWorldProcInfo = 0x000003F0 };         /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  478. enum { uppPickerGetDialogProcInfo = 0x000000F0 };                 /* pascal 4_bytes Func(4_bytes) */
  479. enum { uppPickerGetItemListProcInfo = 0x000000F0 };             /* pascal 4_bytes Func(4_bytes) */
  480. enum { uppPickerGetColorProcInfo = 0x00000EF0 };                 /* pascal 4_bytes Func(4_bytes, 2_bytes, 4_bytes) */
  481. enum { uppPickerSetColorProcInfo = 0x00000EF0 };                 /* pascal 4_bytes Func(4_bytes, 2_bytes, 4_bytes) */
  482. enum { uppPickerEventProcInfo = 0x000003F0 };                     /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  483. enum { uppPickerEditProcInfo = 0x000003F0 };                     /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  484. enum { uppPickerSetVisibilityProcInfo = 0x000001F0 };             /* pascal 4_bytes Func(4_bytes, 1_byte) */
  485. enum { uppPickerDisplayProcInfo = 0x000000F0 };                 /* pascal 4_bytes Func(4_bytes) */
  486. enum { uppPickerItemHitProcInfo = 0x000003F0 };                 /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  487. enum { uppPickerSetBaseItemProcInfo = 0x000002F0 };             /* pascal 4_bytes Func(4_bytes, 2_bytes) */
  488. enum { uppPickerGetProfileProcInfo = 0x000000F0 };                 /* pascal 4_bytes Func(4_bytes) */
  489. enum { uppPickerSetProfileProcInfo = 0x000003F0 };                 /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  490. enum { uppPickerGetPromptProcInfo = 0x000003F0 };                 /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  491. enum { uppPickerSetPromptProcInfo = 0x000003F0 };                 /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  492. enum { uppPickerGetIconDataProcInfo = 0x000003F0 };             /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  493. enum { uppPickerGetEditMenuStateProcInfo = 0x000003F0 };         /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  494. enum { uppPickerSetOriginProcInfo = 0x000003F0 };                 /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  495. enum { uppPickerSetColorChangedProcProcInfo = 0x00000FF0 };     /* pascal 4_bytes Func(4_bytes, 4_bytes, 4_bytes) */
  496. enum { uppNPickerGetColorProcInfo = 0x00000EF0 };                 /* pascal 4_bytes Func(4_bytes, 2_bytes, 4_bytes) */
  497. enum { uppNPickerSetColorProcInfo = 0x00000EF0 };                 /* pascal 4_bytes Func(4_bytes, 2_bytes, 4_bytes) */
  498. enum { uppNPickerGetProfileProcInfo = 0x000003F0 };             /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  499. enum { uppNPickerSetProfileProcInfo = 0x000003F0 };             /* pascal 4_bytes Func(4_bytes, 4_bytes) */
  500. enum { uppNPickerSetColorChangedProcProcInfo = 0x00000FF0 };     /* pascal 4_bytes Func(4_bytes, 4_bytes, 4_bytes) */
  501. enum { uppPickerExtractHelpItemProcInfo = 0x00003AF0 };         /* pascal 4_bytes Func(4_bytes, 2_bytes, 2_bytes, 4_bytes) */
  502. #define NewPickerOpenProc(userRoutine)                             (PickerOpenUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerOpenProcInfo, GetCurrentArchitecture())
  503. #define NewPickerCloseProc(userRoutine)                         (PickerCloseUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerCloseProcInfo, GetCurrentArchitecture())
  504. #define NewPickerCanDoProc(userRoutine)                         (PickerCanDoUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerCanDoProcInfo, GetCurrentArchitecture())
  505. #define NewPickerVersionProc(userRoutine)                         (PickerVersionUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerVersionProcInfo, GetCurrentArchitecture())
  506. #define NewPickerRegisterProc(userRoutine)                         (PickerRegisterUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerRegisterProcInfo, GetCurrentArchitecture())
  507. #define NewPickerSetTargetProc(userRoutine)                     (PickerSetTargetUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetTargetProcInfo, GetCurrentArchitecture())
  508. #define NewPickerInitProc(userRoutine)                             (PickerInitUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerInitProcInfo, GetCurrentArchitecture())
  509. #define NewPickerTestGraphicsWorldProc(userRoutine)             (PickerTestGraphicsWorldUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerTestGraphicsWorldProcInfo, GetCurrentArchitecture())
  510. #define NewPickerGetDialogProc(userRoutine)                     (PickerGetDialogUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetDialogProcInfo, GetCurrentArchitecture())
  511. #define NewPickerGetItemListProc(userRoutine)                     (PickerGetItemListUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetItemListProcInfo, GetCurrentArchitecture())
  512. #define NewPickerGetColorProc(userRoutine)                         (PickerGetColorUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetColorProcInfo, GetCurrentArchitecture())
  513. #define NewPickerSetColorProc(userRoutine)                         (PickerSetColorUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetColorProcInfo, GetCurrentArchitecture())
  514. #define NewPickerEventProc(userRoutine)                         (PickerEventUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerEventProcInfo, GetCurrentArchitecture())
  515. #define NewPickerEditProc(userRoutine)                             (PickerEditUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerEditProcInfo, GetCurrentArchitecture())
  516. #define NewPickerSetVisibilityProc(userRoutine)                 (PickerSetVisibilityUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetVisibilityProcInfo, GetCurrentArchitecture())
  517. #define NewPickerDisplayProc(userRoutine)                         (PickerDisplayUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerDisplayProcInfo, GetCurrentArchitecture())
  518. #define NewPickerItemHitProc(userRoutine)                         (PickerItemHitUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerItemHitProcInfo, GetCurrentArchitecture())
  519. #define NewPickerSetBaseItemProc(userRoutine)                     (PickerSetBaseItemUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetBaseItemProcInfo, GetCurrentArchitecture())
  520. #define NewPickerGetProfileProc(userRoutine)                     (PickerGetProfileUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetProfileProcInfo, GetCurrentArchitecture())
  521. #define NewPickerSetProfileProc(userRoutine)                     (PickerSetProfileUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetProfileProcInfo, GetCurrentArchitecture())
  522. #define NewPickerGetPromptProc(userRoutine)                     (PickerGetPromptUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetPromptProcInfo, GetCurrentArchitecture())
  523. #define NewPickerSetPromptProc(userRoutine)                     (PickerSetPromptUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetPromptProcInfo, GetCurrentArchitecture())
  524. #define NewPickerGetIconDataProc(userRoutine)                     (PickerGetIconDataUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetIconDataProcInfo, GetCurrentArchitecture())
  525. #define NewPickerGetEditMenuStateProc(userRoutine)                 (PickerGetEditMenuStateUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerGetEditMenuStateProcInfo, GetCurrentArchitecture())
  526. #define NewPickerSetOriginProc(userRoutine)                     (PickerSetOriginUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetOriginProcInfo, GetCurrentArchitecture())
  527. #define NewPickerSetColorChangedProcProc(userRoutine)             (PickerSetColorChangedProcUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerSetColorChangedProcProcInfo, GetCurrentArchitecture())
  528. #define NewNPickerGetColorProc(userRoutine)                     (NPickerGetColorUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppNPickerGetColorProcInfo, GetCurrentArchitecture())
  529. #define NewNPickerSetColorProc(userRoutine)                     (NPickerSetColorUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppNPickerSetColorProcInfo, GetCurrentArchitecture())
  530. #define NewNPickerGetProfileProc(userRoutine)                     (NPickerGetProfileUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppNPickerGetProfileProcInfo, GetCurrentArchitecture())
  531. #define NewNPickerSetProfileProc(userRoutine)                     (NPickerSetProfileUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppNPickerSetProfileProcInfo, GetCurrentArchitecture())
  532. #define NewNPickerSetColorChangedProcProc(userRoutine)             (NPickerSetColorChangedProcUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppNPickerSetColorChangedProcProcInfo, GetCurrentArchitecture())
  533. #define NewPickerExtractHelpItemProc(userRoutine)                 (PickerExtractHelpItemUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppPickerExtractHelpItemProcInfo, GetCurrentArchitecture())
  534. #define CallPickerOpenProc(userRoutine, storage, self)             CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerOpenProcInfo, (storage), (self))
  535. #define CallPickerCloseProc(userRoutine, storage, self)         CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerCloseProcInfo, (storage), (self))
  536. #define CallPickerCanDoProc(userRoutine, storage, selector)     CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerCanDoProcInfo, (storage), (selector))
  537. #define CallPickerVersionProc(userRoutine, storage)             CALL_ONE_PARAMETER_UPP((userRoutine), uppPickerVersionProcInfo, (storage))
  538. #define CallPickerRegisterProc(userRoutine, storage)             CALL_ONE_PARAMETER_UPP((userRoutine), uppPickerRegisterProcInfo, (storage))
  539. #define CallPickerSetTargetProc(userRoutine, storage, topOfCallChain)  CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerSetTargetProcInfo, (storage), (topOfCallChain))
  540. #define CallPickerInitProc(userRoutine, storage, data)             CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerInitProcInfo, (storage), (data))
  541. #define CallPickerTestGraphicsWorldProc(userRoutine, storage, data)  CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerTestGraphicsWorldProcInfo, (storage), (data))
  542. #define CallPickerGetDialogProc(userRoutine, storage)             CALL_ONE_PARAMETER_UPP((userRoutine), uppPickerGetDialogProcInfo, (storage))
  543. #define CallPickerGetItemListProc(userRoutine, storage)         CALL_ONE_PARAMETER_UPP((userRoutine), uppPickerGetItemListProcInfo, (storage))
  544. #define CallPickerGetColorProc(userRoutine, storage, whichColor, color)  CALL_THREE_PARAMETER_UPP((userRoutine), uppPickerGetColorProcInfo, (storage), (whichColor), (color))
  545. #define CallPickerSetColorProc(userRoutine, storage, whichColor, color)  CALL_THREE_PARAMETER_UPP((userRoutine), uppPickerSetColorProcInfo, (storage), (whichColor), (color))
  546. #define CallPickerEventProc(userRoutine, storage, data)         CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerEventProcInfo, (storage), (data))
  547. #define CallPickerEditProc(userRoutine, storage, data)             CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerEditProcInfo, (storage), (data))
  548. #define CallPickerSetVisibilityProc(userRoutine, storage, visible)  CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerSetVisibilityProcInfo, (storage), (visible))
  549. #define CallPickerDisplayProc(userRoutine, storage)             CALL_ONE_PARAMETER_UPP((userRoutine), uppPickerDisplayProcInfo, (storage))
  550. #define CallPickerItemHitProc(userRoutine, storage, data)         CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerItemHitProcInfo, (storage), (data))
  551. #define CallPickerSetBaseItemProc(userRoutine, storage, baseItem)  CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerSetBaseItemProcInfo, (storage), (baseItem))
  552. #define CallPickerGetProfileProc(userRoutine, storage)             CALL_ONE_PARAMETER_UPP((userRoutine), uppPickerGetProfileProcInfo, (storage))
  553. #define CallPickerSetProfileProc(userRoutine, storage, profile)  CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerSetProfileProcInfo, (storage), (profile))
  554. #define CallPickerGetPromptProc(userRoutine, storage, prompt)     CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerGetPromptProcInfo, (storage), (prompt))
  555. #define CallPickerSetPromptProc(userRoutine, storage, prompt)     CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerSetPromptProcInfo, (storage), (prompt))
  556. #define CallPickerGetIconDataProc(userRoutine, storage, data)     CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerGetIconDataProcInfo, (storage), (data))
  557. #define CallPickerGetEditMenuStateProc(userRoutine, storage, mState)  CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerGetEditMenuStateProcInfo, (storage), (mState))
  558. #define CallPickerSetOriginProc(userRoutine, storage, where)     CALL_TWO_PARAMETER_UPP((userRoutine), uppPickerSetOriginProcInfo, (storage), (where))
  559. #define CallPickerSetColorChangedProcProc(userRoutine, storage, colorProc, colorProcData)  CALL_THREE_PARAMETER_UPP((userRoutine), uppPickerSetColorChangedProcProcInfo, (storage), (colorProc), (colorProcData))
  560. #define CallNPickerGetColorProc(userRoutine, storage, whichColor, color)  CALL_THREE_PARAMETER_UPP((userRoutine), uppNPickerGetColorProcInfo, (storage), (whichColor), (color))
  561. #define CallNPickerSetColorProc(userRoutine, storage, whichColor, color)  CALL_THREE_PARAMETER_UPP((userRoutine), uppNPickerSetColorProcInfo, (storage), (whichColor), (color))
  562. #define CallNPickerGetProfileProc(userRoutine, storage, profile)  CALL_TWO_PARAMETER_UPP((userRoutine), uppNPickerGetProfileProcInfo, (storage), (profile))
  563. #define CallNPickerSetProfileProc(userRoutine, storage, profile)  CALL_TWO_PARAMETER_UPP((userRoutine), uppNPickerSetProfileProcInfo, (storage), (profile))
  564. #define CallNPickerSetColorChangedProcProc(userRoutine, storage, colorProc, colorProcData)  CALL_THREE_PARAMETER_UPP((userRoutine), uppNPickerSetColorChangedProcProcInfo, (storage), (colorProc), (colorProcData))
  565. #define CallPickerExtractHelpItemProc(userRoutine, storage, itemNo, whichMsg, helpInfo)  CALL_FOUR_PARAMETER_UPP((userRoutine), uppPickerExtractHelpItemProcInfo, (storage), (itemNo), (whichMsg), (helpInfo))
  566.  
  567. #if PRAGMA_STRUCT_ALIGN
  568.     #pragma options align=reset
  569. #elif PRAGMA_STRUCT_PACKPUSH
  570.     #pragma pack(pop)
  571. #elif PRAGMA_STRUCT_PACK
  572.     #pragma pack()
  573. #endif
  574.  
  575. #ifdef PRAGMA_IMPORT_OFF
  576. #pragma import off
  577. #elif PRAGMA_IMPORT
  578. #pragma import reset
  579. #endif
  580.  
  581. #ifdef __cplusplus
  582. }
  583. #endif
  584.  
  585. #endif /* __COLORPICKERCOMPONENTS__ */
  586.  
  587.